Many to few group address translation through a network bridge

ABSTRACT

A method for connecting a first communication system with a third communications system, by passing through a second communications system, is disclosed. A first frame is received from the first communications system, where the first frame has a multicast address as a destination address. The multicast address requires the frame to be transmitted onto the second multicast address is translated into a functional address. The functional address is written into a second frame, and the second frame is transmitted onto the second communications system. A station receiving the second frame translates the functional address into a multicast address and writes the multicast address into the destination address field of a third frame, and transmits the third frame onto the third communications system.

This is a continuation of application(s) Ser. No. 07/645,934 filed on Jan. 25, 1991, now abandoned.

FIELD OF THE INVENTION

The invention relates generally to addressing of frames relayed between local area networks, and more particularly to mapping of multicast addresses from a first local area network which supports many multicast addresses through a second local area network which supports only a few multicast addresses.

TABLE OF RELATED PATENTS

The following Applications for United States Patent are related to the present application, are assigned to the same assignee as the present application and are filed on even date with the present application:

Title: "Encapsulation of an Address within a Forwarded Frame in a Computer Communications System", filed by R. J. Perlman and W. R. Hawe, Ser. No. 07/645,935 filed Jan. 25, 1991, now abandoned and continued as Ser. No. 08/255,309, filed Jun. 7, 1994, and also continued as Ser. No. 08/150,928, filed Nov. 13, 1993.

Title: "Using a Multicast Address in a Local Area Network where the Local Area Network has Inadequate Multicast Addressing Capability"", filed by R. J. Perlman, Ser. No. 07/645,933 filed Jan. 25, 1991, now abandoned and continued as Ser. No. 07/968,222 filed Oct. 29, 1992, now issued as U.S. Pat. No. 5,321,693; and all disclosures of these related patent applications are incorporated herein by reference.

BACKGROUND OF THE INVENTION

Local area networks, LANs, have been designed with many different addressing schemes. For example, the Ethernet LAN design and IEEE 802.3 standard, has 47 bits designated for multicast addresses for a total of approximately 140 trillion addresses.

In contrast, implementations of the token ring IEEE 802.5 standard provide only approximately 24 to approximately 31 separate addresses for multicast addresses, and these addresses are provided in the functional addressing defined by the IEEE 802.5 standard. The IEEE 802.5 standard provides 6 bytes, or 48 bits, for functional addressing, but chips implementing the standard first require a few of the bits to be set to a defined value, referred to as the Functional Address Indicator, and also require that only one bit of the remaining bits be set to "1", and the others be set to "0". The bits having the defined value give an indication that the rest of the bits indicate a "functional address", and the "rest of the bits" is only approximately 24 to 31 bits depending upon the implementation, and only one of these bits can be set.

It is common practice to forward frames from one LAN to another LAN by means of a bridge. Normally, the destination address field of a frame arriving at the bridge from a first LAN is copied into the destination address field of the frame transmitted by the bridge onto the second LAN. However, in the case of multicast addresses, in the event that the first LAN is an Ethernet supporting 140 trillion multicast addresses it is not possible to directly map to a token ring IEEE 802.5 address space of only approximately 24 to 31 addresses available for multicast purposes.

A solution to the mapping of multicast addresses between LANs of different size multicast address spaces has been suggested in U.S. Pat. No. 4,933,938, issued to D. B. Sheehy on Jun. 12, 1990. In the Sheehy patent a translation table is used to directly map the multicast addresses of the first LAN onto the multicast addresses of the second LAN.

However, there still remains the problem of some LANs such as Ethernet which is capable of supporting 2 to the 47'th power (approximately 140 trillion) multicast addresses and other LANs such as the token ring IEEE 802.5 standard LAN having only approximately 24 to 31 multicast addresses in their functional address space. In bridging an Ethernet LAN to a token ring 802.5 LAN, much of the advantage of having many multicast addresses in Ethernet will be lost in the forwarding of frames to the token ring IEEE 802.5 standard LAN.

SUMMARY OF THE INVENTION

The invention provides a means to preserve the multicast address of a frame on a first communications system having a large multicast address space when the frame is forwarded onto a second communications system having a small multicast address space.

The invention comprises a connection apparatus for connecting a first communications system with a second communications system and has a means for receiving at least one first frame from the first communications system, the at least one first frame having a multicast destination address, the multicast destination address requiring the at least one first frame to be transmitted onto the second communications system. Also there is a means for writing an representation of the multicast address into a second frame and for transmitting the second frame onto the second communications system. Also, there is a further means for including a self describing feature in the second frame, the self describing feature capable of interpretation by a station receiving the second frame to have the station interpret the representation of the multicast address and recover the multicast address.

The representation of the multicast address may be the multicast address written into a designated field of the second frame transmitted onto the second communications system.

The frame may be forwarded onto a third communications system supporting the multicast address structure of the first communications system, and the multicast address is recovered from the representation of the multicast address written into the second frame and the multicast address is written into the destination address field of a third frame transmitted onto the third communications system.

Other and further aspects of the present invention will become apparent during the course of the following description and by reference to the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

Referring now to the drawings, in which like numerals represent like parts in the several views:

FIG. 1 is a frame field diagram in accordance with the invention.

FIG. 2 is a block diagram of multiple LANs connected by bridges and routers in accordance with the invention.

FIG. 3 is a block drawing comparing the OSI Standard Reference Model with IEEE and IEEE/ANSI LAN standards.

FIG. 4 is a standard frame field diagram for a MAC header.

FIG. 5 is a standard frame field diagram for a LLC header.

FIG. 6A is a LLC header in accordance with an embodiment of the invention.

FIG. 6B is a MAC header and a LLC header in accordance with an embodiment of the invention.

FIG. 7 is a LLC header in accordance with an embodiment of the invention.

FIG. 8 is a look-up table in accordance with an embodiment of the invention.

FIG. 9 is a look-up table in accordance with an embodiment of the invention.

DETAILED DESCRIPTION

There is shown in FIG. 1 a field diagram of a frame having a self describing feature in accordance with the invention. The frame is transmitted onto an original LAN by an originating station and is received by one or more stations on either the same LAN or on other LANs connected to the original LAN.

Fields 100 are leading fields, and may, for example, depend upon the particular standard to which the LAN design complies. Field 102 is the destination address, referred to hereinafter as the DA field. Field 102, may in some embodiments of the invention, also comprise an indicator to information which must be interpreted in order for a station detecting the frame to know the intended destination address.

In an example, the frame was forwarded from a first LAN by a bridge to a second LAN, and the DA field in the first LAN contains a multicast address and the second LAN has a small multicast address capability so that there is no direct translation of the original multicast address into an address on the second LAN. In this example, the DA field 102 of the frame on the second LAN is an indicator to additional information stored in the frame on the second LAN, where the additional information enables the receiving station to recover the original multicast address. The additional information is contained in the frame in field 104. In another embodiment of the invention, field 120 is an additional indicator to field 104.

In another embodiment of the invention the first indicator may involve field 103. For example, field 103 may be the frame control field, FC field.

Additionally, FIG. 1 shows other fields 110, 112, 114 which are part of the frame but are not directly involved with the present invention. Also the source address field, SA field, 116 is shown, although the SA field is also not directly involved with the present invention.

As shown in FIG. 1, the invention involves at least one, and alternatively several, indicators 102, 103, 120 to a field 104 holding information needed to recover the original multicast address. Any indicators utilized by the invention as well as the additional information held in field 104 may be referred to as a self describing feature of the frame for recovery of the original multicast address.

Turning now to FIG. 2, there is shown a representative system made of several local area networks, LANs. The LANs may be connected together by means of bridges to form an extended LAN, or by means of routers to form a wide area network.

LAN 130 is connected by bridge 132 to LAN 134. For example, LAN 130 may be an Ethernet LAN and or IEEE 802.3 LAN, while LAN 134 may be a token ring. LAN 134 may, for example, be an IEEE 802.5 token ring. Alternatively, LAN 134 may be an ANSI/IEEE FDDI token ring.

LAN 134 is connected by bridge 140 to LAN 142. LAN 142 is connected by bridge 144 to LAN 146. LAN 134 also is connected by bridge 150 to LAN 152. LAN 152 is connected by bridge 154 to LAN 156. LAN 156 is connected by router 160, over a telecommunications link 162, 164, and through router 166 to LAN 170. LAN 170 is connected by bridge 172 to LAN 174.

An extended LAN 180 is formed by the bridge connection of LANs 130, 134, 142, 146, 152, 156. Another extended LAN 182 is formed by bridge connected LANs 170, 174. A wide area network is formed by the router 160, 166 connection of extended LAN 180 to extended LAN 182.

The total system shown in FIG. 2 is simply representative of the complex networks which may be joined together in modern computer communications systems.

Transmission of frames between different LANs is facilitated by standards. For example, the IEEE 802.x series of standards defines a number of standard LANs. The IEEE 802.2 standard defines a Logical Link Control layer which is common to the various IEEE 802.x LANs, and is also common to the ANSI/IEEE FDDI token ring.

Turning now to FIG. 3, there is shown a comparison between the International Standards Organization ISO seven layer Reference Model for communications and the model layers defined by various IEEE and ANSI standard LANs. The IEEE 802.2 LLC, Logical Link Control, block 190 is part of the OSI level 2 Data Link block 192. Also included in the OSI Data Link block 192 is the Medium Access Control, MAC, portion of the IEEE 802.x standards, including the IEEE 802.3 Ethernet block 194, the IEEE 802.4 Token Passing Bus block 196, the IEEE 802.5 Token Ring block 198, and the IEEE/ANSI FDDI block 200. The commonalty of the IEEE 802.2 LLC standard for the specific LAN standards, blocks 194, 196, 198, and 200 is advantageously used by the present invention.

FIG. 4 shows a representative MAC header frame format of the type used to transmit information on a LAN, and to transmit frames between LANs. Only the destination address DA field 210, the source address field SA 212, and the information INFO 214 fields are shown. Each IEEE 802.x standard defines leading fields 216 and also defines trailing fields 218, and each standard may, for example have its own unique leading 216 and trailing 218 fields. Also, the IEEE 802.3 Ethernet frame has an additional Length field 220 between the SA field 212 and the INFO field 214. The INFO field 214 is used to transmit information from a sending station to a receiving station.

Turning now to FIG. 5, there is shown an IEEE 802.2 LLC field structure. The field structure shown in FIG. 5 is common to the LAN standards shown in FIG. 3, the IEEE 802.3 Ethernet 194, IEEE 802.4 Token Passing Bus 196, the IEEE 802.5 Token Ring 198, and the IEEE/ANSI FDDI token ring 200. The DSAP field 230 is the Destination Service Access Point field, The SSAP field 232 field is the Source Service Access Point field, the Control Field 234 follows the SSAP 232 field, and an optional Protocol Identifier field 236 may follow the Control Field 234. The condition for having a Protocol Identifier field is that the DSAP field have a value of SNAP SAP. The SNAP SAP value is the Sub Network Access Protocol value, and is a unique value defined in connection with the IEEE 802.2 LLC standard. For example, the SNAP SAP is a special SAP value assigned for the purpose of encapsulating a protocol type field in the LLC header, for example Protocol Identifier field 236. For example, the SNAP SAP value may be alternating 1's and 0's in the DSAP byte, field 230. In some exemplary embodiments it is also convenient for the SSAP field 232 to have the SNAP SAP value.

Fields 238 trail the Protocol Identifier field 236 when it is present, or trail the Control Field 234 when the Protocol Field 236 is absent. Fields 238 carry information for use by the LLC layer, or for transmission to higher layers in the OSI Reference model.

A first embodiment of the invention using encapsulation of the desired multicast address is shown in FIG. 6. Referring to FIG. 4, a destination address DA field 210 in the MAC header is chosen to indicate that a multicast address must be recovered from information held within the frame. For example, in the event that the frame is being forwarded onto an IEEE 802.5 token ring LAN the DA field 210 is chosen as one of the functional addresses, and this functional address is reserved to always indicate that a multicast address must be recovered from information stored within the frame. The multicast address may then be located either before the LLC header or after the LLC header.

In a second embodiment of the invention, the DA field 210 of the MAC header is chosen as the same functional address of the First Embodiment, however, referring once again to FIG. 6, the DSAP field 230 is chosen to equal the SNAP SAP value. The multicast address is then stored within field 240 immediately following the Protocol Identifier field 236.

In a third embodiment of the invention, the DA field 210 of the MAC header is chosen as the same functional address of the First Embodiment, but the DSAP value is chosen as a different SAP value. The Protocol Identifier field 236 is then absent, and the desired multicast address is stored in a field 242 immediately following the control field 234, as shown in FIG. 7.

In a fourth embodiment of the invention, a table look-up method is used to recover the desired multicast address in a local area network (LAN), where the LAN has inadequate multicast address ability. FIG. 8 illustrates the look-up table 260. The DA field 210 of the MAC header is chosen, as hereinabove, to contain a functional address. However, a specific value of a SAP is associated with each commonly used multicast address. The appropriate value of SAP is then placed in the DSAP field 230 of the LLC header. A station detecting this frame interprets the frame by first, recognizing from the address in the DA field 210 of the MAC header that information concerning a multicast address is contained within the frame; second, recognizing that the SAP value contained within the DSAP field 230 is an indicator 262 serving as an entry point to table 260 containing the multicast address as an entry 264; and third, using the SAP value read from the DSAP field 230 to enter the table and look up the desired multicast address, where the SAP value 266 corresponds to the multicast address 268. A list of SAP values are dedicated to the table 260, and each of the dedicated SAP values is an entry point into the table stored in the station. A table value corresponds to each entry point, and the table value contains the desired multicast address. The table must be created within the station. The table may, as a first example, be created by the station manufacturer when the station is manufactured. The table may, as a second example, be created by a systems manager by entering the appropriate corresponding SAP and multicast addresses. The table may, as a third example, be created remotely by information messages arriving over the LAN and received by the station.

In a fifth embodiment of the invention, a table look-up method similar to the method of the fourth embodiment is used. The table 260 is illustrated in FIG. 8. However, the DA field of the MAC header contains a broadcast address. For example, the broadcast address may be that all six bytes of an exemplary DA field are set to equal "1", to make 48 "1"s. Again, a dedicated SAP value is written into the DSAP field of the LLC header, and the dedicated SAP value is an entry 262, 266 into table 260 holding the desired multicast address 264, 268.

In a sixth embodiment of the invention, a table look-up method similar to the method of the fourth embodiment is used. However, the DSAP field of the LLC header is set equal to the SNAP SAP value, and the Protocol Identifier field 236 of FIG. 6 of the LLC header contains the entry to the table 260. The desired multicast address is stored as a value in the table at a location 268 corresponding to the identifier 266. Protocol Identifier field 236 is defined in the IEEE 802.5 standard as being 5 bytes long, where each byte is eight bits, for a total of 40 bits in the Protocol Identifier field. With a total of 40 bits, the Protocol Identifier field 236 may hold 2 to the 40'th power, or approximately 1.1 trillion different values, and so the space of this field is sufficiently large enough serve as an entry into a table, where the entry points to a multicast address stored in the table.

In an seventh embodiment of the invention, a frame control field 103 in FIG. 1 from the MAC header is used to indicate that the frame must be parsed and analyzed in order to determine the desired multicast address. This mechanism works in any LAN having a frame control field before the destination address DA field such as the IEEE 802.5 token ring or the ANSI/IEEE FDDI token ring. This embodiment has the disadvantage that the FC field has only one byte, that is eight bits, and it is not possible to have a central authority such as the International Standards Organization or the IEEE assign a unique value for indicating a self describing frame structure for holding a desired multicast address. Accordingly, if another person, or vendor, uses the same value of the FC field for a different purpose, then an interoperability problem will arise.

In an eighth embodiment of the invention, an unused bit, or an unused byte value, in the LLC Control field 234 of FIG. 5 is assigned to the purpose of indicating that the frame contains a multicast address. This embodiment is similar to the use of the Frame Control field from the MAC header, but this embodiment uses the LLC header. This LLC Control field 234 of the LLC header may be one or two bytes long. It is possible to have a value from the LLC Control field assigned, by a standards body such as the International Standards Organization, to a manufacturer for a particular purpose. For example, a particular value could be assigned for the purpose of this invention, to indicate that a multicast address is stored within the frame.

In a ninth embodiment of the invention two items in the frame are used to indicate that the frame contains a multicast address, and is shown in FIG. 6B. This embodiment is similar, but a further exemplary embodiment, to the fourth through eighth embodiments hereinabove. The first item is that the destination address, DA field, 102 of FIG. 1, 210 of FIG. 4 of the MAC header contains a special address. The special address may be, for example, a broadcast address, or may be, as a second example, a dedicated functional address. The second item is that a special indicator 120 of FIG. 1 such as, for example, the DSAP field of the LLC header 211, or, as a second example, the SSAP field of the LLC header 211, or for a third example, the frame control field of the LLC header 211, indicates that a multicast address is stored in the frame. This LLC header 211 is a special LLC header devoted to addressing. Additionally, a "real" LLC header 213 must also be stored in the frame to contain the usual LLC header values, protocol code points, etc., rather than addressing information.

In a tenth embodiment of the invention, the DA field 210 of the MAC header along with the SAP value in the DSAP field 230 informs the station that the frame must be further parsed in order to determine the type of frame. Once the type of frame is determined, then a table 270 in FIG. 9 associating frame type and multicast addresses is entered at frame type entry 272. The table provides an output giving the desired multicast address 274. For example, the frame may be a service advertising message as disclosed in U.S. Pat. No. 4,823,122 issued to Mann et al. on Apr. 18, 1989, and entitled "Local Area Network for Digital Data Processing Systems". Once the station determines that the frame is a service advertising message, the station looks up this frame type 276 in the table and the the associated multicast address 278 used by this type of frame. The table contains a list of multicast address 274, 278 for each type of frame 272, 276 recognized by the station.

In an eleventh embodiment of the invention the "type of frame" method as in the tenth embodiment is used, however, there is used any of the other methods of indicating that a multicast address is stored within the frame.

An advantage of using a chosen value of a SAP in the DSAP field 230 is that the International Standards Organization assigns values of SAPs for particular uses. Accordingly, a user, or a vendor, can have a unique value, or set of values, assigned to indicate a self describing frame holding a desired multicast address. No interoperability issue will arise with another vendor because the International Standards Organization will assign different values to other vendors for other purposes. Also, this advantage follows from using any other field for which a standards body will assign a particular value to a manufacturer, for example the LLC header Control field;

Use of the invention may be described with reference to FIG. 2. As an example, assume that a frame originates from station 250 on LAN 130, assume further that LAN 130 is an IEEE 802.3 ethernet with 140 trillion available multicast addresses. The frame is forwarded to LAN 134, and assume further that LAN 134 is an IEEE 802.5 token ring with only approximately 31 functional addresses which can be used for multicast addresses. Bridge 132 then utilizes one of the embodiments of the invention mentioned hereinabove in order to make the frame on LAN 134 self describing for the purpose of the desired multicast address.

Bridge 150 will forward the frame from LAN 134 to LAN 152. Assume that LAN 152 is an IEEE 802.3 Ethernet LAN. Bridge 150 will analyze the self describing frame in order to learn the desired multicast address, and will write the desired multicast address into the DA field 102 of the MAC header before transmitting the frame onto LAN 152.

Bridge 140 will forward the frame onto LAN 142. Assume that LAN 142 is an ANSI/IEEE FDDI LAN. Bridge 140 will analyze the self describing frame in order to learn the desired multicast address, and will write the desired multicast address into the DA field of the MAC header before transmitting the frame onto FDDI LAN 142. The FDDI standard may define multicast addresses differently from the IEEE 802.3 Ethernet standard of LAN 130, and bridge 140 will properly account for any such difference in writing a multicast address into DA field 102.

Bridge 154 will forward the frame onto LAN 156, and in the event that LAN 156 is an IEEE 802.5 Ethernet, then the multicast address in DA field 102 will not require modification by bridge 154.

Repeater 162 and repeater 166 will forward the frame to LAN 170, and in the event that LAN 170 is again an IEEE 802.5 token ring, the invention will once again be employed, this time by repeater 166, in order to make the frame on LAN 170 self describing.

Bridge 172 will forward the frame to LAN 174. Assume that LAN 174 is an IEEE 802.3 Ethernet. Bridge 172 will use the self describing feature of the frame on LAN 170, in accordance with the invention, in order to recover the desired multicast address and write the desired multicast address into the DA field 102 of the MAC header before transmitting the frame onto LAN 174. The multicast address, in this example, started from an IEEE 802.3 Ethernet LAN 130, passed through two IEEE 802.5 LANS, LAN 134 and LAN 170, and was recovered as the multicast address used on IEEE 802.3 Ethernet LAN 174.

It is to be understood that the above-described embodiments are simply illustrative of the of the principles of the invention. Various other modifications and changes may be made by those skilled in the art which will embody the principles of the invention and fall within the spirit and scope thereof. 

What is claimed is:
 1. A method for connecting a first communications system with a third communications system through a second communications system, comprising:receiving at least one first frame from said first communications system, said at least one first frame having a multicast address as a destination address, said multicast address requiring said at least one first frame to be transmitted onto said second communications system; translating said multicast address to a functional address, said functional address capable of translation by a station receiving a frame containing said functional address into said multicast address; and, writing said functional address into a second frame and transmitting said second frame onto said second communications system, a station connected on said second communications system receiving said second frame to write said multicast address translated from said functional address into a destination address field of a third frame before transmitting said third frame onto said third communications system.
 2. A method as in claim 1 further comprising:receiving at least one second frame from said second communications system, said at least one second frame having a functional address contained therein; recovering, responsive to said functional address, said multi-cast address from said functional address, and placing said multi-cast address into a destination address field of a third frame transmitted onto said third communications system.
 3. The method as in claim 1 further comprising: placing said functional address in at least one designated field of said second frame.
 4. The method as in claim 1 further comprising: using as said first communications system an ethernet industry standard communications system.
 5. The method as in claim 1 further comprising: using as said first communications system an ethernet system based upon an IEEE 802.3 standard.
 6. The method as in claim 1 further comprising: using as said first communications system a token ring based upon a Fiber Distributed Data Interface ANSI/IEEE FDDI (ISO 9314) standard.
 7. The method as in claim 1 further comprising: using as said second communications system a token ring system based upon an IEEE 802.5 standard.
 8. The method as in claim 1 further comprising:placing in a table at least one multi-cast address and a corresponding functional address for translating said multi-cast address to said functional address; retrieving, responsive to said multicast address, from said table said corresponding functional address.
 9. The method as in claim 8 further comprising:using as said at least one multicast address a plurality of multicast addresses, and each multicast address of said plurality of said multicast addresses having a corresponding unique functional address; and, retrieving from said table the corresponding unique functional address for each of said multicast address of said plurality of said multicast addresses.
 10. The method as in claim 1 further comprising:dividing said functional address into two values, and writing the first value into a DSAP field of said second frame and writing the second value into a PROTOCOL TYPE field of said second frame.
 11. The method as in claim 10 further comprising:receiving an incoming frame from said second communications system; retrieving responsive to said first value in said DSAP field of said incoming frame and said second value in said PROTOCOL TYPE field of said incoming frame, from said table a corresponding multicast address; writing said corresponding multicast address into a DESTINATION ADDRESS field of an outgoing frame; and transmitting said outgoing frame onto said third communications system.
 12. The method as in claim 1 further comprising:writing said functional address into a standard header field of said second frame.
 13. The method as in claim 1 further comprising:writing said multicast address into a standard destination address field of said third frame.
 14. A method for connecting a first communications system with a third communications system through a second communications system, comprising:receiving at least one first frame from said first communications system, said at least one first frame having a multicast destination address, said multicast destination address requiring said at least one first frame to be transmitted onto said second communications system; writing a functional address corresponding to said multicast address into a second frame and transmitting said second frame onto said second communications system; receiving said second frame on said second communications system; recovering, in response to said functional address, from said second frame said multicast address, and placing said multicast address in a third frame, and transmitting said third frame onto said third communications system.
 15. The method as in claim 14 further comprising: using as said third communications system an industry standard Ethernet system.
 16. The method as in claim 14 further comprising: using as said third communications system an ethernet system based upon an IEEE 802.3 standard.
 17. The method as in claim 14 further comprising: using as said third communications system a token ring based upon a Fiber Distributed Data Interface ANSI/IEEE FDDI (ISO 9314) standard.
 18. A method for connecting a first communications system with a third communications system through a second communications system, comprising:receiving at least one first frame from said first communications system, said at least one first frame having a multicast destination address, said multicast destination address requiring said at least one first frame to be transmitted onto said second communications system; writing a functional address corresponding to said multicast address into a second frame and transmitting said second frame onto said second communications system; receiving said second frame on said second communications system; recovering, responsive to said functional address, said multicast address, and placing said multicast address in a third frame, and transmitting said third frame onto said third communications system. 